From 3859ed92d8c522fe8a50e3ddc4d1669fc5957d66 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Wed, 15 May 2019 09:46:41 +0200 Subject: [PATCH] x86emul: suppress general register update upon AVX gather failures While destination and mask registers may indeed need updating in this case, the rIP update in particular needs to be avoided, as well as e.g. raising a single step trap. Reported-by: George Dunlap Signed-off-by: Jan Beulich Acked-by: Andrew Cooper master commit: 74f299bbd7d5cc52325b5866c17b44dd0bd1c5a2 master date: 2019-04-03 10:14:32 +0200 --- xen/arch/x86/x86_emulate/x86_emulate.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/x86/x86_emulate/x86_emulate.c b/xen/arch/x86/x86_emulate/x86_emulate.c index b1f3b568ab..28e1248d2f 100644 --- a/xen/arch/x86/x86_emulate/x86_emulate.c +++ b/xen/arch/x86/x86_emulate/x86_emulate.c @@ -7746,6 +7746,9 @@ x86_emulate( invoke_stub("", "", "+m" (mask) : "a" (&mask)); put_stub(stub); + if ( rc != X86EMUL_OKAY ) + goto done; + state->simd_size = simd_none; break; } -- 2.30.2